package com.loong.ems.domain.vo.resp;

import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.util.Date;

@Data
public class EmployeeExcelVo {

    @ExcelProperty(value = "姓名", index = 0)
    private String name;  // 员工姓名

    @ExcelProperty(value = "工号", index = 1)
    private String code; // 员工工号

    @ExcelProperty(value = "电子邮箱", index = 2)
    private String email; // 员工电子邮箱

    @ExcelProperty(value = "手机号", index = 3)
    private String mobile; // 员工手机号

    @ExcelProperty(value = "身份证号", index = 4)
    private String idCard; // 员工身份证号

    @JsonFormat(pattern = "yyyy-MM-dd")
    @ExcelProperty(value = "出生日期", index = 5)
    private Date birthday; // 员工出生日期

    @ExcelProperty(value = "性别", index = 6)
    private Integer sex; // 员工性别(0-未知 1-男 2-女)

    @ExcelProperty(value = "民族", index = 7)
    private String nationCode; // 员工民族

    @ExcelProperty(value = "政治面貌", index = 8)
    private String politicalCode; // 员工政治面貌

    @ExcelProperty(value = "籍贯", index = 9)
    private String nativePlace; // 员工籍贯

    @ExcelProperty(value = "毕业院校", index = 10)
    private String graduateSchool; // 员工毕业院校

    @ExcelProperty(value = "专业", index = 11)
    private String majorCode; // 员工专业

    @ExcelProperty(value = "最高学历", index = 12)
    private String highestEducationCode; // 员工最高学历

    @ExcelProperty(value = "最高学位", index = 13)
    private String highestDegreeCode; // 员工最高学位

    @ExcelProperty(value = "现居住地", index = 14)
    private String habitation; // 员工现居住地

    @ExcelProperty(value = "婚姻状态", index = 15)
    private Integer maritalStatus; // 员工婚姻状态(0-未知 1-未婚 2-已婚 3-离异)

    @JsonFormat(pattern = "yyyy-MM-dd")
    @ExcelProperty(value = "入职日期", index = 16)
    private Date entryDate; // 员工入职日期

    @JsonFormat(pattern = "yyyy-MM-dd")
    @ExcelProperty(value = "离职日期", index = 17)
    private Date leaveDate; // 员工离职日期

    @ExcelProperty(value = "任职部门", index = 18) // Department name
    private String deptName; // 部门名称

    @ExcelProperty(value = "岗位岗级", index = 19) // Post level name
    private String postLevelName; // 岗位名称

}
